class Animal:
    def __init__(self,name):
        self.name = name

    def eat(self):
        print(f"--------{self.name}吃------",end="")
    def run(self):
        print(f"--------{self.name}跑--------")
    def sleep(self):
        print(f"--------{self.name}睡--------")


class Dog(Animal):
    def __init__(self,name,zhong):
        super().__init__(name) # super()代表父类对象
        self.zhong = zhong


    def bark(self):
        super().eat()
        print(f"------{self.name}叫-忠诚度{self.zhong}------")

    # 父类的方法内容，不能满足所有子类需求，需要重新定义方法的实现,这种操作叫方法重写
    # 重写需要定义一个和父类方法名参数一致的方法即可
    def eat(self):
        super().eat()  # 调用父类的方法内容
        print("骨头")

class Cat(Animal):
    pass

a = Animal("动物")
a.eat()
print("--------------------------")
dog = Dog("狗",78)
dog.eat()